Quantum computers promise to make many computationally challenging problems tractable. For example, determining prime factors of large integers is generally not possible using conventional computers, but such factorization is well suited to quantum computation. Already some authorities recommend that information that is to be stored securely should be protected with quantum-safe encryption protocols.
Qubits, qutrits, qudits, and the like can be implemented in various ways. For example, spin qubits can be based on spins of charged particles trapped in solid substrates, such as nitrogen vacancy centers in diamond. Alternatively, superconducting circuits, ion traps, or photonic circuits can be used. Unfortunately, systems for implementing operations on qubits, qutrits, or other quantum devices tend to be expensive. To take advantage of the capabilities offered by quantum computing, improved methods and apparatus for selecting quantum gates from a set of available gates to represent any particular operator are needed, especially for qutrits, qudits, and multi-qubit systems.